Systems and methods for detecting a press on a touch-sensitive surface

ABSTRACT

Systems and methods that allow the user to rest their fingers on a touch-sensitive surface and make selections on that surface with a pressing action. Touch capacitance sensors that typically provide X and Y location data associated with a user&#39;s touch are also used to discern finger pressure in the Z direction. This allows the user to make an actuation on the touch screen by simply pressing harder at a location where they may already be resting their finger(s).

PRIORITY INFORMATION

The application claims priority to provisional application Ser. No. 61/472,799 filed Apr. 7, 2011 and is incorporated herein by reference.

FIELD OF INVENTION

The present invention relates to input devices for electronics and, more particularly, to a touch sensitive input surface especially suited to smartphones, tablet computers, touch sensitive keyboards, input panels, medical equipment, or any other device that uses a touch-sensitive panel or display.

BACKGROUND OF THE INVENTION

With the advent of touch-sensitive interfaces on the screen of computing devices, it has become necessary to find alternative human-computer interfaces to the traditional keyboard and mouse. Many of these devices, often referred to as tablet computers, smart phones, and smart screens, don't support the traditional input paradigms of an external keyboard and mouse. Rather, they rely on the direct input of the user through human touch.

Besides this type of computing device, there are also other touch-interface devices that use a similar mode for user input. One such example is that of a touch-sensitive computer keyboard that is made up of a solid touch-sensitive surface that can be easily wiped for cleaning purposes.

Traditionally, these touch sensitive surfaces respond immediately to the user's touch (or release). The paradigm is simple: point, touch, select. While this works well for many applications, it is problematic in situations where the user desires to rest their hands and/or fingers on the surface. A touch sensitive keyboard (onscreen or stand-alone) is a good example of such a situation; a trained ten-finger touch typist relies on resting their fingers on the home row of the keyboard and then pressing keys to initiate an action. On traditional touch surfaces, this isn't possible because as soon as the user touches the surface to rest their fingers, an action is initiated. These solutions don't take into account the need for the user to rest their hands/fingers on the surface.

There are many methods for detecting the touch of a human user, including sensors based on capacitance, infrared light, resistance, surface acoustic waves, and force sensors. Each of these methods have their respective advantages and disadvantages. But the vast majority of today's touch-based systems have standardized on using touch capacitance.

An example of one of the first uses of a touch capacitance for computer input is described in U.S. Pat. No. 5,305,017 to Gerpheide. This approach has become the standard for providing a cursor-pointing alternative to a computer mouse in the form of a touchpad, commonly included in most laptop computers. The method decodes touches in two dimensions, offering offsets in the horizontal (x) direction and vertical (y) direction as the user moves their finger across the touchpad surface. However, no consideration is given to user assertions in the vertical (−z) direction.

This approach to sensing human touch using changes in capacitance is commonly employed in the industry. Electronic chips are readily available to perform these functions, such as the QT60486 from Quantum Research Group and the AT32UCL3L from Atmel Corporation. These chips, and others like them, are used by hundreds of companies to sense human touch.

Others have taken the concept of touch capacitance input further to include decoding user gestures and assigning functions to them. U.S. Pat. No. 7,470,949 by Jobs et al. teaches how gestures using simultaneous touches on a capacitive surface such as “pinching”, rotating, and swiping can be used to manipulate onscreen elements. While this approach allows for multiple fingers touching the surface at one time, it is not for the purpose of allowing the user to “rest” their fingers on the surface, but rather for a specific intended action to be performed.

The object coming into contact with the touch sensitive surface may not always be a human finger. For example, other forms of touch sensors such as resistive, surface acoustic wave, and infrared allows passive objects such as a plastic stylus to be used to make selections on the touch surface. It is possible to also apply this concept using capacitive sensors, by designing input objects with capacitive properties similar to a human finger. For example, in U.S. Pat. No. 5,488,204 Mead et al. describe a paintbrush-like input device that is capable of creating brush-like strokes on a display screen. Mead further teaches using X and Y sensor data to determine a Z-value representing finger pressure. Mead's teachings build on the teachings of Miller et al. in U.S. Pat. No. 5,374,787. This method, however, is targeted toward a single input (of either a single finger, stylus, or paintbrush-like input device) and is focused on a touchpad rather than a touch surface that is part of a display or graphical surface. It doesn't apply the concept to the problem of multiple fingers resting directly on the touch surface on which are displayed actionable regions, as disclosed in the present invention.

There are numerous other devices that use force sensors to detect pressure in the Z direction. For example, in U.S. Pat. No. 8,026,906 Molne et al. describe using force-sensing resistors (FSR's) to measure downward pressure on a touch screen, wherein the FSR's are placed between the touch sensitive surface and supporting posts (or feet at all four corners). In U.S. Pat. No. 5,241,308 Young et al. describe a similar method wherein pressure is detected by the deformation between two panels closely spaced apart, or by providing force-sensing means located at each of the spaced apart support. These devices measure the forces transmitted by the touch surface to a fixed frame at multiple points (see also U.S. Pat. No. 3,657,475 to Peronneau et al. and U.S. Pat. No. 4,121,049 to Roeber). These methods detect pressure by a means that is separate from the means to detect touch, whereas the present invention detects touch, resting, and pressing all through the same touch capacitive means.

SUMMARY OF THE INVENTION

The present invention provides systems and methods that allow the user to rest their fingers on a touch-sensitive surface and make selections on that surface by pressing. Touch capacitance sensors that typically provide X and Y location data associated with a user's touch are also used to discern finger pressure in the Z direction. This allows the user to make an actuation on the touch screen by simply pressing harder at a location where they may already be resting their finger(s).

In one aspect of the invention, the process discerns between the actions of tapping on the surface, resting on the surface, and pressing on the surface. It does so using, in part, thresholds for the touch signal (which may be dynamically altered to accommodate the touch signatures of different users). The process also takes into account the rate of the rising edge of the touch signal to discern between a tap, a resting action, and a press.

It is desirable to allow a human user to rest their hands and/or fingers on a touch surface without causing an actuation, yet still allow other actions issued by the user through touch, such as a press, to be interpreted as commands by the system.

One such method takes into account the vibration caused by the user “tapping” on keys and is described in U.S. Patent Publication No. 20090073128 (Marsden et al.) all of its teaching are hereby incorporated by reference. This method accounts for the common user action of striking, or “tapping” a key to actuate it. The present invention furthers this teaching by also allowing a press action on the surface.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred and alternative examples of the present invention are described in detail below with reference to the following drawings:

FIG. 1 is a block diagram of an exemplary system formed in accordance with an embodiment of the present invention;

FIG. 2 is a graphical representation of a state machine, detailing the states of resting and pressing;

FIG. 3 is a data flow diagram of exemplary processes performed by the system shown in FIG. 1;

FIGS. 4A and B are plots of waveforms representing the touch signal value in the time domain for various press actions;

FIG. 5 illustrates the disruption of an electrical field caused by the capacitance of a lightly touching finger;

FIG. 6 illustrates the disruption of an electrical field caused by the capacitance of a finger being pressed strongly into the surface; and

FIGS. 7A, 7B, and 7C are waveform plots of a tap selection, a rest, and a press action, all in the time domain.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

FIG. 1 shows a block diagram of an exemplary device 100 for providing a touch interface that can discern between tapping, resting, and pressing. The device 100 includes one or more touch sensors 120 that provide input to a CPU (processor) 110. The touch sensors 120 notify the processor 110 of contact events when a surface is touched. In one embodiment, the touch sensor(s) 120, or the processor 110, include a hardware controller that interprets raw signals produced by the touch sensor(s) 120 and communicates the information to the processor 110, using a known communication protocol via an available data port. The processor 110 generates an image that is presented on a display 130 (touch surface) or alternatively, the display may be static. The processor 110 is in data communication with a memory 140, which includes a combination of temporary and/or permanent storage, and both read-only and writable memory (random access memory or RAM), read-only memory (ROM), writable nonvolatile memory, such as FLASH memory, hard drives, floppy disks, and so forth. The memory 140 includes program memory 150 that includes all programs and software such as an operating system 151, press detection software component 152, and any other application software programs 153. The memory 140 also includes data memory 160 that includes System Settings 161, a record of user options and preferences 162, and any other data 163 required by any element of the device 100.

The device 100 allows the user to perform at least three interactions on the touch screen: a touch-and-release selection (or a “tap”), a resting action wherein they rest two or more fingers simultaneously on the touch surface, and a pressing action. Being able to distinguish between these three actions significantly improves the flexibility and usefulness of the user interface of the device 100. For example, the touch surface can be used as a keyboard, allowing the user to rest their fingers on it as they would while touch-typing on a traditional keyboard.

FIG. 2 is a state diagram that illustrates how a press state is determined by the processor 110. The system is initialized in 200 and then enters the idle state 205 where no touch is detected. When a touch signal is detected, the system begins to measure the accumulation of the signal. When the accumulation reaches a pre-defined threshold called the Binary Rest Threshold in 206, the system proceeds to the Plateau State 210. In the Plateau State 210, the user is deemed to be resting their finger(s) on the touch surface. If the user removes their finger(s) from the surface and the Slope Accumulation drops below the Binary Rest Threshold in 211 then the system returns to Idle State 205. From the Plateau State 210 a user may press their finger harder into the surface causing the Slope Accumulation to continue to increase past a pre-defined Positive Press Threshold 212, upon which the system proceeds to the Positive Press Detect State 215 and asserts a press action. As long as the user maintains the pressure while in the Positive Press Detect State 215, the system maintains the press assertion (similar to holding down a key on a traditional keyboard). Once in the Positive Press Detect State 215, the user may lift their finger(s) from the surface causing the Slope Accumulation to decrease below the Binary Rest Threshold in 217 and the system returns once again to the Idle State 205. However, while in the Positive Press Detect State 215, the user may reduce the pressure of the pressing action without completely removing their finger. In this case, a negative inflection point occurs where the touch signal decreases to a point and then either levels out or begins to increase again (ie. where the slope of the touch signal curve is zero as it passes from negative to positive). When a negative inflection point is detected the system determines if the Slope Accumulation has decreased below a Negative Press Threshold point in 216, at which point the system advances to the Negative Press Detect State 220 and the press action is released. Note that the Negative Press Detect State 220 is similar to the Plateau State 210 in that the user is deemed to be resting. However, the absolute value of the touch signal may be quite different between the two states. When in the Negative Press Detect State 220 the system watches for a maximum inflection point (where the slope of the curve is zero as it passes from positive to negative). When a max inflection point takes place and the Slope Accumulation exceeds the Positive Press Threshold in 221, the system returns to the Positive Press Detect State 215 and asserts a press action. Alternatively, while in the Negative Press Detect State 220, if the Slope signal falls below the Binary Rest Threshold in 222 then the user is deemed to have lifted their finger off the surface and the system returns to the Idle State 205.

FIG. 3 is a data flow diagram that shows how the CPU 110 measures, stores, and analyzes the touch signal. In block 300 the system acquires the raw sensor data from an analog to digital convertor (ADC). The signal is then passed through a low-pass filter in block 305 in order to smooth out any high frequency noise that may be present in the signal. The result is then stored in a Cache (2) in block 310. The slope of the signal is then analyzed in block 315, followed by detection of the minimum and maximum inflection points of the signal in block 320. In block 325 the system accumulates the slope changes and stores the result in Cache (1) in block 330. This calculation determines the amplitude difference between the min and max inflection points. In block 335, the rate of change of the signal is determined and stored in Cache (1) in block 340. The rate of change of the signal is helpful in determining the difference between a tap selection, a resting set-down action, and a press (as illustrated in FIGS. 7A, 7B, and 7C. In block 345 of FIG. 3, the system determines the current press state.

FIGS. 4A and 4B are representations of the touch signal going through a number of conditions resulting in press actions being issued by the system. In FIG. 4A the system follows a very simple process of using fixed threshold values to determine the different between a resting action and a press. The user touches the surface at 4000 causing the touch signal to rise above the pre-defined Rest Threshold 4050, as which point the signal levels off at 4010 causing an inflection point and putting the system into the Plateau State 210. Some time later, the user presses harder on the surface causing the touch signal to increase above the Press Threshold 4055 to a local maxima value at 4020 at which point the system asserts a press action (indicated by the black circle). The system continues looking for maxima and minima inflection points. The inflection points found at 4025 and 4030 are ignored since they occur above the Press Threshold, meaning the press asserted at 4020 continues to be asserted. At 4035 the system detects a minima inflection point that falls above the Rest Threshold 4050 and below the Press Threshold 4055 at which point it asserts a press release action (indicated by the hollow circle). The user then presses again causing the touch signal to increase past the Press Threshold. The system detects the maxima inflection point at 4040 and assets another press action. The user then completely lets go, causing the touch signal to fall back to zero. Although no inflection point is detected, at 4045 the system recognizes that the touch signal has fallen below the Rest Threshold 4050 and assets a press release action.

The method described in the above paragraph associated with FIG. 4A is straight-forward, but fails to discern the possible press action that takes place between 4025 and 4030. When a user performs multiple presses in quick succession, the touch signal often remains above the Press Threshold even on the press release action. In order to remedy this short-coming an embodiment is illustrated in FIG. 4B.

Referring to FIG. 4B, the user touches the surface at 4100 causing the touch signal to rise above a pre-defined Rest Threshold 4150, at which point the signal levels off at 4110 causing an inflection point which the system discerns as a Rest assertion and places the state machine into the Plateau State 210. Some time later, the user presses harder on the surface causing the touch signal to increase to a local maximum value at 4120. The relative change in the signal from 4110 to 4120 is compared with another threshold called the Press Assertion Delta Threshold. If the increase in signal between 4110 and 4120 is greater than the Press Assertion Delta Threshold then a press action is asserted by the system at 4120 (indicated by the solid black circle). Following this assertion, the user decreases the touch pressure between 4120 and 4125 but then once again increases the pressure between 4125 and 4130. At 325, the system detects a minimum inflection point and measures the change in the touch signal between 4120 and 4125 which is then compared with yet another threshold called the Press Release Delta Threshold. If the absolute value of the decrease in the touch signal between 4120 and 4125 is greater than the Press Release Delta Threshold then a release action is asserted by the system (indicated by the hollow circle). A similar process takes place between 4130, 4135, and 4140 only with different amplitudes and rate of change in the signal. Finally, the user stops pressing at 4140 but keeps their finger in contact with the surface in a resting action at 4145, at which point the system asserts a press release action. After some amount of time, the user then removes their finger from the touch surface and the signal quickly falls to zero. As the signal decreases through the Rest Threshold the system asserts a Rest release action at 4150.

In one embodiment the two methods described in FIG. 4A and FIG. 4B may be selectively combined.

FIG. 5 illustrates one of many possible embodiments in how a touch-sensitive surface can be implemented using capacitance. A touch-sensitive surface 500 is made up of one or more sensors in which an electrode 510 emits an electrical signal forming an electrical field 530, 540, and 570. An adjacent electrode 520 couples with a portion of the formed electrical field 570. The coupled signal at the adjacent electrode 520 is detected and measured by the system. As a human finger 550 touches the surface 500, a portion of the electrical field 540 couples with the finger, resulting in less of the electrical field 570 coupling with the second electrode 520. The processor 110 receives a digital representation of the analog voltage measurement obtained from the second electrode 520 then detects the change of the signal at the second electrode 520 and determines a touch has taken place. The degree to which the electrical field 540 couples with the human finger 550 is dependent, in part, on the amount of surface area 560 with which the finger comes in contact. A “light” touch is shown in FIG. 5 where the finger 550 is just making contact with the touch surface 500. A relatively lower amount of the electrical field 540 is disrupted by the light touch.

FIG. 6 illustrates the effects of a stronger press on the touch capacitance signals. A touch-sensitive surface 600 is made up of one or more sensors in which an electrode 610 emits an electrical signal forming an electrical field 630, 640, and 670. An adjacent electrode 620 couples with a portion of the formed electrical field 670. The coupled signal at the adjacent electrode 620 is detected and measured by the system. As a human finger 650 presses hard on the surface 600, a relatively larger portion of the electrical field 640 couples with the finger, resulting in less of the electrical field 670 coupling with the second electrode 620. The processor 110 receives a digital representation of the analog voltage measurement obtained from the second electrode 620 then detects the change of the signal at the second electrode 620 and determines a press has taken place. The degree to which the electrical field 640 couples with the human finger 650 is dependent, in part, on the amount of surface area 660 with which the finger comes in contact. A “heavy” touch, or press, is shown in FIG. 6 where the finger 650 makes strong contact with the touch surface 600 causing the finger to flatten out at 660. A relatively larger amount of the electrical field 640 is disrupted by the pressing action.

FIGS. 7A, 7B, and 7C illustrate the three actions of a tap selection, a resting set-down action, and a set-down press action respectively. Both the amplitude of the touch signal and the slope of the leading edge of the signal are used to determine which action is being initiated by the user. In FIG. 7A the user quickly taps on a key causing the signal to exceed a pre-defined first threshold indicating a valid touch has taken place. The rising slope of the signal is steep, as is the falling edge, and it peaks between the First Threshold and the Second Threshold (the conditions for a “tap” selection). FIG. 7B illustrates the signal that meets the conditions for a resting set-down action. In this case, the rising edge of the touch signal is relatively slow (as compared to a tap signal) and the amplitude of the signal stabilizes between the First and Second Thresholds. FIG. 7C illustrates the signal that meets the conditions for a set-down press action. In this case, the rising edge of the touch signal is relatively slow as compared to the tap signal, but similar in slope to the rising edge of a rest set-down action. However, the amplitude of the signal continues beyond the Second Threshold indicating the user has pressed harder than a normal touch. The slower rise time, but higher amplitude indicates a set-down pressing action has taken place.

Being able to distinguish between a tap selection, a set-down resting action, and a pressing action is critical in allowing the user to rest their fingers on a touch surface. Further, using the same sensors to detect all three actions has the advantages of keeping the cost of the system relatively lower and simpler.

While the preferred embodiment of the invention has been illustrated and described, as noted above, many changes can be made without departing from the spirit and scope of the invention. Accordingly, the scope of the invention is not limited by the disclosure of the preferred embodiment. Instead, the invention should be determined entirely by reference to the claims that follow. 

The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:
 1. A system comprising: a touch sensitive surface comprising a plurality of touch capacitive sensors associated with actionable locations on the touch sensitive surface, wherein each touch capacitive sensor of the plurality of touch capacitive sensors is associated with a respective key of a plurality of keys of a virtual keyboard; a processor configured to: determine that a user interaction is a selection event when one of one or more signals received from one or more of the plurality of touch capacitive sensors has a leading rising edge with a rate-of-change that exceeds a first rate-of-change threshold followed within a predefined amount of time by a falling edge decreasing in value at a rate-of-change greater than a second rate-of-change threshold; determine that a user interaction of resting multiple fingers on the touch sensitive surface is a resting action when multiple signals received from one or more of the plurality of touch capacitive sensors are between a first threshold value and a second threshold value, and the rate-of-change of the leading rising edge of the multiple signals is less than the first rate-of-change threshold and the multiple signals are above the first threshold value, wherein the resting action is not actionable; and determine that a user interaction with the touch sensitive surface is a press action on a key of the plurality of keys of the virtual keyboard when one or more signals received from one or more of the plurality of touch capacitive sensors are above the second threshold value.
 2. The system of claim 1, wherein the first and second threshold values are predefined.
 3. The system of claim 1, wherein the first and second threshold values are variable based on individual touch characteristics of each user.
 4. The system of claim 1, wherein the processor is further configured to assert an activation after a determined resting action for a particular user interaction is followed by a determined press action on an actionable location.
 5. The system of claim 1, wherein the processor is further configured to determine a press and hold event when a determined resting action for a particular user interaction is followed by a determined press action that is sustained for longer than a predefined key repeat time.
 6. The system of claim 1, wherein the first and second rate-of-change thresholds are the same.
 7. The system of claim 1, wherein the processor is configured to determine that the user action is a resting action when amplitudes of the multiple signals are greater than at least the first threshold value.
 8. The system of claim 1, wherein the processor is further configured to determine that the user interaction with the touch sensitive surface is the press action when the rate-of-change of the leading rising edge of the one or more signals is less than the first rate-of-change threshold and the one or more signals are above the second threshold value.
 9. The system of claim 1, further comprising an output device configured to present a response corresponding to the press action.
 10. The system of claim 1, wherein the processor is further configured to: determine that a user interaction with the touch sensitive surface is a tap action on the key of the plurality of keys of the virtual keyboard when a rising slope of one or more signals received from one or more of the plurality of touch capacitive sensors is steep in accordance with predetermined criterion.
 11. A system comprising: a touch sensitive surface comprising a plurality of touch capacitive sensors associated with actionable locations on the touch sensitive surface, wherein each touch capacitive sensor of the plurality of touch capacitive sensors is associated with a respective key of a plurality of keys of a virtual keyboard; and a processor in signal communication with the touch sensitive surface, the processor configured to: determine that a user interaction of resting multiple fingers on the touch sensitive surface is a resting action when multiple signals received from one or more of the plurality of touch capacitive sensors are between a first threshold value and a second threshold value, wherein the resting action is not actionable; upon determining that the user interaction is the resting action, determine a peak of one of the multiple signals and determine a difference in amplitude of the multiple signals associated with the resting action and the determined peak, wherein if the determined difference is greater than a first predefined delta threshold, determine that a user interaction with the touch sensitive surface is a press action on a key of the plurality of keys of the virtual keyboard; upon determining that the user interaction is the press action, determine a trough of one of the multiple signals, and determine a difference in amplitude of the multiple signals associated with the press action and the determined trough, wherein if the multiple signals are determined to be at or below the first threshold value, determine that a user interaction with the touch sensitive surface is a rest and release action; and wherein if the trough and the peak have a difference that is greater than a second predefined delta threshold, determine that a user interaction with the touch sensitive surface is a press and release action on the key of the plurality of keys of the virtual keyboard.
 12. The system of claim 11, wherein the first and second predefined delta thresholds are the same.
 13. The system of claim 11, further comprising an output device configured to present a response corresponding to the press action.
 14. A system comprising: a touch sensitive surface comprising a plurality of touch capacitive sensors associated with actionable locations on the surface, wherein each touch capacitive sensor of the plurality of touch capacitive sensors is associated with a respective key of a plurality of keys of a virtual keyboard; and a processor configured to: determine that a user interaction of resting multiple fingers on the touch sensitive surface is a resting action when multiple signals received from one or more of the plurality of touch capacitive sensors are between a first threshold value and a second threshold value, wherein the resting action is not actionable; determine that a user interaction with the touch sensitive surface is a press action on a key of the plurality of keys of the virtual keyboard when a rate-of-change of a leading rising edge of a signal of one or more signals received from one or more of the plurality of touch capacitive sensors is less than a first rate-of-change threshold and the one or more signals are above a second threshold value; after determination of the resting action, determine a peak of one of the multiple signals and determine a difference in amplitude of the multiple signals associated with the resting action and the determined peak; if the determined difference is greater than a first predefined delta threshold, determine that a user interaction with the touch sensitive surface is a press action on the key of the plurality of keys of the virtual keyboard; after determination of the press action, determine that a user interaction with the touch sensitive surface is at least one of: a rest and press release action on the key of the plurality of keys of the virtual keyboard, if the multiple signals are determined to be at or below the first threshold value; or a press release action on the key of the plurality of keys of the virtual keyboard, wherein the processor determines an amplitude of a trough of one of the multiple signals and determines the user interaction is the press release action if the trough amplitude and the determined peak have a difference that is greater than a second predefined delta threshold.
 15. The system of claim 14, wherein the first and second predefined delta thresholds are the same.
 16. The system of claim 14, further comprising an output device configured to present a response corresponding to the press action.
 17. A system comprising: a touch sensitive surface comprising a plurality of touch capacitive sensors associated with actionable locations on the touch sensitive surface, wherein each touch capacitive sensor of the plurality of touch capacitive sensors is associated with a respective key of a plurality of keys of a virtual keyboard; a processor configured to: determine that a user interaction of resting multiple fingers on the touch sensitive surface is a resting action when: (i) multiple signals received from one or more of the plurality of touch capacitive sensors are between a first threshold value and a second threshold value, wherein the resting action is not actionable, and (ii) amplitudes of the multiple signals stabilize when the amplitudes of the multiple signals level off and remain relatively constant for a predetermined amount of time; and determine that a user interaction with the touch sensitive surface is a press action on a key of the plurality of keys of the virtual keyboard when one or more signals received from one or more of the plurality of touch capacitive sensors are above the second threshold value. 